Did some simple tests and unfortunately cannot reproduce with small sample.
I have created a default application with
QT += core
QT -= gui
CONFIG += c++11
TARGET = ModeTest
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
CONFIG(debug, debug|release):TARGET = $$join(TARGET,,,"DebugMode")
message("TARGET " $$TARGET)
DESTDIR = c:/Source/Utilities
SOURCES += main.cpp
and
#include <QCoreApplication>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
return a.exec();
}
When changing on the left side in creator from debug to release forward and back the name of the exe is always correctly displayed based on chosen on chosen mode. Also the exe can be produced and file sizes are as to be expected.
As next I have added a subdirs project which is using the project above.
TEMPLATE = subdirs
SUBDIRS = ModeTest
ModeTest.subdir = ../ModeTest
The same. My problem cannot be reproduced easily. Possibly the problem is triggered by other actions in between, but no clue at the moment.